package com.alipay.common;

/**
 * 支付参数DTO
 * @author xumiao
 *
 */
public class PayParam {
	
	public final static String DNA = "DNA";
	public final static String VPOS = "VPOS";
	public final static String ALIPAY = "ALIPAY";
	public final static String YEEPAY ="YEEPAY";
	
	public final static String CMB = "CMB";
	public final static String CC = "CC";
	public final static String DC = "DC";
	
	/**支付通道 DNA:银联 VPOS:快钱 ALIPAY:支付宝*/
	private String channel = "";
	/**银行卡标识     CC：贷记卡(信用卡) DC：借记卡*/
	private String cardType = ""; 
	/**银行名称*/
	private String bankName = "";
	/**银行代码*/
	private String bankCode = "";
	/**卡号*/
	private String cardNo = "";
	/**快钱信用卡支付: 对于银联和VISA卡，对应卡片背面的CVV2数字；对于MasterCard卡，对应卡片背面的CVC2数字*/
	private String cvv2;
	/**信用卡支付：信用卡有效期，格式：月/年  12/15*/
	private String expiredDate = "";
	/**持卡人姓名：开户姓名*/
	private String cardName = "";
	/**开户证件类型
	 * A 身份证 B 护照 C 军官证  D 士兵证  E 回乡证 F 临时身份证 G 户口薄 H 警官证  I 港澳通行证 J 营业执照 K 外国人居留证  
	 * L 武警证 M 港澳居民来往内地通行证  N 台湾居民来往大陆通行证  O 香港身份证  P 法人代码证  Z 其他证件 
	 **/
	private String idType = "";
	/**开户证件号*/
	private String idNo = "";
	/**开户登记手机号码*/
	private String phone = "";
	
	/**承运人    HU:海航  GS:天津 PN:西部 JD:首都  8L:祥鹏*/
	private String carrier = "";
	/**订单号*/
	private String orderNo = "";
	/**订单金额*/
	private String orderAmount = "";
	/**产品名称*/
	private String productName = "";
	/**产品描述*/
	private String productRemark = "";
	/**操作者姓名*/
	private String operatorName = "";
	
	/**银联支付:开户行所有省市,新用户支付时必填 广东省,广州市*/
	private String bankAdd = "";
	/**银联支付:开户证件地址*/
	private String cardCertAdd = "";
	
	/**手机令牌码*/
	private String token = "";
	/**手机验证码*/
	private String validCode = "";
	
	public String getChannel() {
		return channel;
	}
	public void setChannel(String channel) {
		this.channel = channel;
	}
	public String getCardType() {
		return cardType;
	}
	public void setCardType(String cardType) {
		this.cardType = cardType;
	}
	public String getBankName() {
		return bankName;
	}
	public void setBankName(String bankName) {
		this.bankName = bankName;
	}
	public String getBankCode() {
		return bankCode;
	}
	public void setBankCode(String bankCode) {
		this.bankCode = bankCode;
	}
	public String getCardNo() {
		return cardNo;
	}
	public void setCardNo(String cardNo) {
		this.cardNo = cardNo;
	}
	public String getCvv2() {
		return cvv2;
	}
	public void setCvv2(String cvv2) {
		this.cvv2 = cvv2;
	}
	public String getExpiredDate() {
		return expiredDate;
	}
	public void setExpiredDate(String expiredDate) {
		this.expiredDate = expiredDate;
	}
	public String getCardName() {
		return cardName;
	}
	public void setCardName(String cardName) {
		this.cardName = cardName;
	}
	public String getIdType() {
		return idType;
	}
	public void setIdType(String idType) {
		this.idType = idType;
	}
	public String getIdNo() {
		return idNo;
	}
	public void setIdNo(String idNo) {
		this.idNo = idNo;
	}
	public String getPhone() {
		return phone;
	}
	public void setPhone(String phone) {
		this.phone = phone;
	}
	public String getCarrier() {
		return carrier;
	}
	public void setCarrier(String carrier) {
		this.carrier = carrier;
	}
	public String getOrderNo() {
		return orderNo;
	}
	public void setOrderNo(String orderNo) {
		this.orderNo = orderNo;
	}
	public String getOrderAmount() {
		return orderAmount;
	}
	public void setOrderAmount(String orderAmount) {
		this.orderAmount = orderAmount;
	}
	public String getProductName() {
		return productName;
	}
	public void setProductName(String productName) {
		this.productName = productName;
	}
	public String getProductRemark() {
		return productRemark;
	}
	public void setProductRemark(String productRemark) {
		this.productRemark = productRemark;
	}
	public String getOperatorName() {
		return operatorName;
	}
	public void setOperatorName(String operatorName) {
		this.operatorName = operatorName;
	}
	public String getBankAdd() {
		return bankAdd;
	}
	public void setBankAdd(String bankAdd) {
		this.bankAdd = bankAdd;
	}
	public String getCardCertAdd() {
		return cardCertAdd;
	}
	public void setCardCertAdd(String cardCertAdd) {
		this.cardCertAdd = cardCertAdd;
	}
	public String getToken() {
		return token;
	}
	public void setToken(String token) {
		this.token = token;
	}
	public String getValidCode() {
		return validCode;
	}
	public void setValidCode(String validCode) {
		this.validCode = validCode;
	}
	
	@Override
	public String toString() {
		StringBuilder sb = new StringBuilder("PayParam {");
		sb.append("channel=").append(channel).append(", ");
		sb.append("cardType=").append(cardType).append(", ");
		sb.append("bankName=").append(bankName).append(", ");
		sb.append("bankCode=").append(bankCode).append(", ");
		sb.append("cardNo=").append(cardNo).append(", ");
		sb.append("cvv2=").append(cvv2).append(", ");
		sb.append("expiredDate=").append(expiredDate).append(", ");
		sb.append("cardName=").append(cardName).append(", ");
		sb.append("idType=").append(idType).append(", ");
		sb.append("idNo=").append(idNo).append(", ");
		sb.append("phone=").append(phone).append(", ");
		sb.append("carrier=").append(carrier).append(", ");
		sb.append("orderNo=").append(orderNo).append(", ");
		sb.append("orderAmount=").append(orderAmount).append(", ");
		//sb.append("productName=").append(productName).append(", ");
		//sb.append("productRemark=").append(productRemark).append(", ");
		sb.append("operatorName=").append(operatorName).append(", ");
		//sb.append("bankAdd=").append(bankAdd).append(", ");
		//sb.append("cardCertAdd=").append(cardCertAdd).append(", ");
		//sb.append("token=").append(token).append(", ");
		//sb.append("validCode=").append(validCode).append(", ");
		return sb.toString();
	} 
}
